package org.dromara.system.domain;

import com.alibaba.excel.annotation.ExcelProperty;
import org.dromara.common.mybatis.core.domain.BaseEntity;
import com.baomidou.mybatisplus.annotation.*;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.math.BigDecimal;

import java.io.Serial;

/**
 * 轮询组收款账号对象 pay_app_account
 *
 * @author Gavino
 * @date 2024-10-22
 */
@Data
@EqualsAndHashCode(callSuper = true)
@TableName("pay_group_account")
public class PayGroupAccount extends BaseEntity {

    @Serial
    private static final long serialVersionUID = 1L;

    /**
     * 主键ID
     */
    @TableId(value = "id", type = IdType.AUTO)
    private Long id;

    /**
     * 轮询组ID
     */
    private Long groupId;

    /**
     * 轮询组ID
     */
    private Long groupTypeId;

    /**
     * 支付平台ID
     */
    private Long payTypeId;

    /**
     * 收款账号ID
     */
    private Long accountId;

    /**
     * 状态
     */
    private Integer status;

    /**
     * 总额度
     */
    private BigDecimal totalLimit;

    /**
     * 额度增长率
     */
    private Integer increaseRate;

    /**
     * 额度刷新时间
     */
    private String refreshTime;

    /**
     * 是否自动上线
     */
    private Integer autoUp;

    /**
     * 最小订单金额
     */
    private BigDecimal minMoney;

    /**
     * 最大订单金额
     */
    private BigDecimal maxMoney;

    /**
     * 价格插件
     */
    private String pricePlugin;

    /**
     * 强制修改价格
     */
    private Integer priceForce;

    /**
     * 收款总金额
     */
    private BigDecimal totalMoney;

    /**
     * API类型
     */
    private String apiType;

    /**
     * 支付方式
     */
    private Integer payMethod;

    /**
     * 收款方式
     */
    private String receiveList;

    /**
     * 是否强制货币
     */
    private Integer isForce;

    /**
     * 强制货币类型
     */
    private String forceCurrency;

    /**
     * 黑名单国家
     */
    private String blackCountry;

    /**
     * 失败次数限制
     */
    private Integer failLimit;

    /**
     * 排序
     */
    private Integer sort;

    /**
     * 自定义字段
     */
    private String customFields;

    /**
     * 代理ID
     */
    private Long agentId;

    /**
     * 代理名称
     */
    private String agentName;

    /**
     * 更新人ID
     */
    private Long updateId;

    /**
     * 更新者
     */
    private String updateName;

}
